package com.lvy.hczn.front.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.lvy.hczn.front.system.domain.transmit.SupplierBoxBatchNumber;
import com.lvy.hczn.front.system.domain.transmit.dto.SupplierBoxBatchNumberExport;

import java.util.List;

public interface SupplierBoxBatchNumberService extends IService<SupplierBoxBatchNumber> {

    /**
     * 查询供应商批次编号管理，供应商生成货箱时的批次和编号，下一批次和编号在记录上累加后更新列表
     *
     * @param supplierBoxBatchNumber 供应商批次编号管理，供应商生成货箱时的批次和编号，下一批次和编号在记录上累加后更新
     * @return 供应商批次编号管理，供应商生成货箱时的批次和编号，下一批次和编号在记录上累加后更新集合
     */
    List<SupplierBoxBatchNumber> selectSupplierBoxBatchNumberList(SupplierBoxBatchNumber supplierBoxBatchNumber);

    /**
     * 批量删除供应商批次编号管理，供应商生成货箱时的批次和编号，下一批次和编号在记录上累加后更新
     *
     * @param ids 需要删除的供应商批次编号管理，供应商生成货箱时的批次和编号，下一批次和编号在记录上累加后更新主键集合
     * @return 结果
     */
    int deleteSupplierBoxBatchNumberByIds(String ids);

    /**
     * 生成货箱编号
     *
     * @param supplierBoxBatchNumber
     * @return
     */
    List<SupplierBoxBatchNumberExport> generateBoxNumber(SupplierBoxBatchNumber supplierBoxBatchNumber);
}
